package com.atguigu.xuexiplus.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * 作业实体类
 */
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("homework")
public class Homework implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 主键ID
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    /**
     * 作业标题
     */
    private String title;

    /**
     * 作业内容描述
     */
    private String content;

    /**
     * 学科ID
     */
    private Long subjectId;

    /**
     * 发布老师ID
     */
    private Long teacherId;

    /**
     * 班级ID
     */
    private Long classId;

    /**
     * 发布时间
     */
    private LocalDateTime publishTime;

    /**
     * 截止时间
     */
    private LocalDateTime deadline;

    /**
     * 状态: 0-草稿, 1-已发布, 2-已结束
     */
    private Integer status;

    /**
     * 优先级: 0-普通, 1-重要, 2-紧急
     */
    private Integer priority;

    /**
     * 附件URL
     */
    private String attachmentUrl;

    /**
     * 创建时间
     */
    private LocalDateTime createdAt;

    /**
     * 更新时间
     */
    private LocalDateTime updatedAt;

    /**
     * 逻辑删除标志
     */
    private Integer deleted;
}
